package main

import (
	"dtf/global_auth/apis"
	"github.com/gogf/gcache-adapter/adapter"
	"github.com/gogf/gf/frame/g"
	_ "github.com/lib/pq"
)

func main() {
	s := g.Server()
	//设置Redis缓存
	adapterRedis := adapter.NewRedis(g.Redis())
	g.DB().GetCache().SetAdapter(adapterRedis)
	//服务路由，路径参数中的uni_id指的是数据库中的guid字段，可以理解为接口号
	GroupServiceApi := s.Group("/api_service")
	GroupServiceApi.ALL("/commit", apis.ApiServiceCommit) //通用报文提交入口，数据在data字段
	//GroupServiceApi.ALL("/reg", apis.ApiServiceReg)                                //注册新服务
	//GroupServiceApi.ALL("/list", apis.ApiServicelist)                              //列出所有服务
	//GroupServiceApi.ALL("/service/{uni_id}/config", apis.ApiServiceConfig)         //返回指定服务的设置参数
	//GroupServiceApi.ALL("/service/{uni_id}/stat", apis.ApiServiceStat)             //返回指定服务的状态信息
	//GroupServiceApi.ALL("/service/{uni_id}/capability", apis.ApiServiceCapability) //返回指定服务的接口能力信息
	//GroupServiceApi.ALL("/service/{uni_id}/update", apis.ApiServiceUpdate)         //更新指定服务的设置参数
	//GroupServiceApi.ALL("/service/{uni_id}/remove", apis.ApiServiceRemove)         //移除指定服务
	//用户路由
	GroupUserApi := s.Group("/api_user")
	GroupUserApi.ALL("/commit", apis.ApiUserCommit) //通用报文提交入口，数据在data字段
	//GroupUserApi.ALL("/reg", apis.ApiUserReg)                                          //注册新用户
	//GroupUserApi.ALL("/list", apis.ApiUserList)                                        //列出所有用户
	//GroupUserApi.ALL("/user/{uni_id}/profile/config", apis.ApiUserProfileConfig)       //返回指定用户的设置参数
	//GroupUserApi.ALL("/user/{uni_id}/profile/update", apis.ApiUserProfileUpdate)       //更新指定用户的设置参数
	//GroupUserApi.ALL("/user/{uni_id}/profile/remove", apis.ApiUserProfileRemove)       //移除指定用户的设置参数
	//GroupUserApi.ALL("/user/{uni_id}/permission/config", apis.ApiUserPermissionConfig) //返回指定用户的权限
	//GroupUserApi.ALL("/user/{uni_id}/permission/update", apis.ApiUserPermissionUpdate) //返回指定用户的权限
	//GroupUserApi.ALL("/user/{uni_id}/permission/remove", apis.ApiUserPermissionRemove) //移除指定用户的权限
	GroupTest := s.Group("/test")
	GroupTest.ALL("/service_document", apis.TestServiceDocument)
	GroupTest.ALL("/mqtt", apis.TestMQTTComponent)
	s.Run()
}
